package lesson02;

import java.util.Scanner;

/**
 * 公牛母牛猜数字游戏
 */
public class GuessGame {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        // 给五次猜的机会，如果五次都没猜中则游戏结束
        // 1. 系统随机生产不相同的四位数
        char [] sysNumber = new char[4];
        for(int i = 0;i < 4;i++){
            sysNumber[i] = (char)(Math.random() * 10 + 48);
            for(int j = 0;j < i;j++){
                if(sysNumber[i] == sysNumber[j]){
                    i--;
                    break;
                }
            }
        }
        // 2. 玩家输入四位不相同的数字
        char [] inputNumbers;
        while(true){
            boolean isValid = true;
            System.out.println("请输入四位不相同的数字:");
            String input = sc.next();
            inputNumbers = input.toCharArray();
            if(inputNumbers.length != 4){
                System.out.println("长度必须四位");
                isValid = false;
                continue;
            }

            for(int i = 0;i < inputNumbers.length;i++){
                if(inputNumbers[i] < '0' || inputNumbers[i] > '9'){
                    System.out.println("必须输入数字");
                    isValid = false;
                    break;
                }
                for(int j = i + 1;j < inputNumbers.length;j++){
                    if(inputNumbers[i] == inputNumbers[j]){
                        System.out.println("四位数不能由相同的值");
                        isValid = false;
                        break;
                    }
                }
            }
            if(isValid){
                break;
            }
        }
        System.out.println("用户输入的数组：" + new String(inputNumbers));

        // 3. 比较系统生成的数和玩家输入的数并给出结果
        // 4. 如果结果为4A0B，玩家胜利
    }
}
